package com.guoheng.hazard.sys.mapper.entpr;

import com.guoheng.hazard.sys.model.dto.entpr.StorageRoomSelectDTO;
import com.guoheng.hazard.sys.model.entity.entpr.StorageRoom;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface StorageRoomMapper {
    int deleteByPrimaryKey(Long id);

    int insert(StorageRoom record);

    /**
     * 方法功能描述: 新增企业库房信息
     *
     * @param  record 企业库房信息
     * @return int
     */
    int insertEntprRooms(StorageRoom record);

    StorageRoom selectByPrimaryKey(Long id);

    /**
     * 方法功能描述: 修改企业库房信息
     *
     * @param record 企业库房信息
     * @return Result
     */
    int updateEntprRooms(StorageRoom record);

    int updateByPrimaryKey(StorageRoom record);

    /**
     * 方法功能描述: 查询企业库房信息
     *
     * @param entprId 企业id
     * @return Result
     */
    List<StorageRoomSelectDTO> getEntprRooms(@Param("entprName") String entprName, @Param("roomNo") String roomNo, @Param("entprId") Long entprId);

    /**
     * 方法功能描述: 查询企业库房详情
     *
     * @param id 企业库房主键
     * @return Result
     */
    StorageRoom getEntprRoomById(Long id);

    /**
     * 方法功能描述: 得到最近的id
     *
     * @return Long
     */
    Long getLastId();

    /**
     * 方法功能描述: 得到所有的库房信息
     *
     * @return List<StorageRoom>
     */
    List<StorageRoom> getAllEntprRooms(Long entprId);
}